Many advanced control techniques are formulated as optimization problems, which can be solved by mathematical programming. One class of such techniques is optimization-based receding horizon control, such as model predictive control (MPC). There are MPC formulations for both linear and nonlinear systems. Nonlinear MPC solves nonlinear mathematical programs in real-time, which can be a challenging task due to a limitation on computing resources, the complexity of the problem to solve, or the time available to solve the problem. Therefore, most of the practical applications are based on a linearity assumption or approximation. The linear MPC typically solves a quadratic programming problem.
The MPC is based on an iterative, finite horizon optimization of a model of a system and has the ability to anticipate future events to take appropriate control actions. This is achieved by optimizing the operation of the system over a future finite time-horizon subject to constraints, and only implementing the control over the current timeslot. For example, the constraints can represent physical limitation of the system, legitimate and safety limitations on the operation of the system, and performance limitations on a trajectory. A control strategy for the system is admissible when the motion generated by the system for such a control strategy satisfies all the constraints. For example, at time t the current state of the system is sampled and an admissible cost minimizing control strategy is determined for a relatively short time horizon in the future. Specifically, an online or on-the-fly calculation determines a cost-minimizing control strategy until time t+T. Only the first step of the control strategy is implemented, then the state is sampled again and the calculations are repeated starting from the now current state, yielding a new control and new predicted state path. The prediction horizon keeps being shifted forward and for this reason MPC is also called receding horizon control.
The MPC can be used to generate the actual trajectory of the motion of the system based on a model of the system and the desired reference trajectory by solving an optimal control problem over a finite future time horizon subject to various physical and specification constraints of the system. The MPC aims for minimizing performance indices of the system motion, such as the error between the reference and the actual motion of the system, the system energy consumption, and the induced system vibration.
Because the MPC is a model-based framework, its performance inevitably depends on the quality of the prediction model used in the optimal control computation. However, in many applications the model of the controlled system is partial unknown or uncertain. In such cases the application of the MPC on the uncertain model can lead to suboptimal performances or even to instability of the controlled system.
Accordingly, there is a need for a method for controlling an operation of a system using the MPC that includes uncertainty.